This invention relates to a cost effective integrated circuit implementation of a high performance transmitter/receiver (transceiver) for bi-directional data communication utilizing a twisted pair cable (two wire metallic cable), such as a digital subscriber loop (DSL). Exemplary, but not exclusive, is a transceiver in an integrated service digital network (ISDN) providing "basic access" service over a conventional telephone communication line. The American National Standard Institute (ANSI) specification for telecommunications (ANSI T1.601-1988) defines "basic access" as a standardized combination of access channels that constitute the access arrangement for the majority of ISDN users. Specifically it includes any of the following combinations of access channels:
a) one D-Channel
b) one B-Channel
c) two B-Channels & one D-Channel
where a B-channel is a 64 kilobits per second channel that carries customer information, such as voice calls, circuit switch data, or packet switch data; a D-channel is an access channel carrying control or signaling information and optionally packetized information and telemetry. The D-channel has a capacity of 16 kilobits per second. Accordingly, the data rate transfer sum of two B-channels and one D-channel is equal to 144 kilobits per second. Problems arise on these high speed channels since data is transceived over a telephone voice communication channel having a narrow bandwidth and line insertion losses up to 50 dB.
The function of a transmitter in a bi-directional communication system is to put a sequence of pulses representing transmitted data on to the communication channel. In the U-interface of an ISDN, these pulses have four levels, encoded particularly in the so-called 2B1Q code (2 binary, 1 quaternary) recommended by the American National Standards Institute T1D1.3 specification.
The function of a receiver is to detect pulses being sent from the far end of the communication channel. Since the communication channel is only a two wire cable, transmit and receive pulses can be contemporaneous on the channel causing an echoing effect when the two interact. The echoing effect can be removed by an echo canceller using a replication or a portion thereof of the transmitted pulse and subtracting it from the received pulse, such as described in U.S. Pat. No. 5,084,866, issued Jan. 28, 1992 to Kenneth G. Buttle entitled "TRANSVERSAL FILTER ECHO CANCELLER" and the co-pending U.S. application Ser. No. 07/507,595, filed Apr. 10, 1990, to Kenneth G. Buttle et. al., entitled "NON-LINEAR ECHO CANCELLER", both of which are assigned to the assignee of the present invention and both of which are incorporated herein by reference. Subsequent to echo cancellation, the receiver determines at what time to sample incoming pulses in order to ascertain the correct pulse amplitude modulation (PAM) level encoded. Difficulties arise in detecting levels due to line attenuation and distortion which causes pulse energy of a particular data pulse to extend over several baud periods. Alternatively stated, the trailing or leading edge of one pulse symbol invades the time slot of the next symbol, complicating the task of determining the correct amplitude assigned to that baud. Interference of this type which results from symbols received prior to the symbol of interest is generally referred to as intersymbol interference.
U.S. Pat. No. 4,896,334 to Sayar, issued Jan. 23, 1990, herein incorporated by reference, suggests a method for inducing undershoot in the received symbol and detecting a zero crossing point occurring after the induced undershoot and sampling one baud (sample period) later. The precursor undershoot is necessary, or at least desirable to improve detection of the zero crossing point. When the undershoot is absent, the resulting flat portion impedes the detection of amplitude variations in the vicinity of zero crossing. In order for an accurate detection of zero crossing, the pulses must be significantly free from interference at or near the precursor undershoot. Complicating the detection in the zero crossing area is corruption due to the so called intersymbol interference which causes erroneous levels in the region between the undershoot and the sampling area. Intersymbol interference in the form of extension of the trailing edge of a data symbol into the symbol time of a following symbol is said to be postcursor intersymbol interference and interference in the form of extension of the leading edge of a data symbol into the symbol time of a preceding symbol is said to be precursor intersymbol interference. Postcursor intersymbol interference is usually dealt with by means of a decision feedback equalizer (DFE). Prior solutions in removing precursor intersymbol interference have utilized some form of a transversal filter. Realizing a transversal filter digitally requires digital multipliers and extensive support hardware, while an analog implementation of a transversal filter requires analog delay lines whose accuracy are difficult to maintain.